<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>

        *{
            margin: 0;
            padding: 0;
        }
        ul{
            list-style: none;
            background-color: #333;
            /* height: 100px; */
            /* overflow: hidden; */
        }
        li{
            /* 开启浮动 */
            /* 浮动的影响 */
            /* 元素浮动以后即完全脱离文档流，这时不会再撑起父元素的高度 */

            /* 我们必须想办法清除 这个影响 防止布局错乱 */

            /* 1. 严格设置(计算) 父类元素 高度 */
            /* 第二种 */
            /* 2.给父类元素 添加overflow:hidden; 属性  推荐  */
            /* 第三种 */
            /* 3. 给 在浮动元素的最后,追加一个 空的 div ,设置clear:both;属性 */
            float: right;
            width: 100px;
            height: 100px;
            background-color: red;
        }
        .clr{
            clear: both;
        }
        .footer{
            background-color: red;
        }
    </style>
</head>
<body>
    <ul>
        <li>1</li>
        <li style="background-color: blue;">2</li>
        <li>3</li>
        <li style="background-color: orange;">4</li>
        <div class="clr"></div>
    </ul>

    <div class="footer">哈哈哈哈哈</div>
</body>
</html>